Leadtools.Jpeg2000 Namespace > Jpeg2000Engine Class > SaveComposite Method : SaveComposite(RasterCodecs,Stream,List<CompositeJpxImages>,Jpeg2000FileFormat,Int32,Int32) Method |
public void SaveComposite( RasterCodecs codecs, Stream stream, List<CompositeJpxImages> compositeImages, Jpeg2000FileFormat format, int bitsPerPixel, int qualityFactor )
'Declaration Public Overloads Sub SaveComposite( _ ByVal codecs As RasterCodecs, _ ByVal stream As Stream, _ ByVal compositeImages As List(Of CompositeJpxImages), _ ByVal format As Jpeg2000FileFormat, _ ByVal bitsPerPixel As Integer, _ ByVal qualityFactor As Integer _ )
'Usage Dim instance As Jpeg2000Engine Dim codecs As RasterCodecs Dim stream As Stream Dim compositeImages As List(Of CompositeJpxImages) Dim format As Jpeg2000FileFormat Dim bitsPerPixel As Integer Dim qualityFactor As Integer instance.SaveComposite(codecs, stream, compositeImages, format, bitsPerPixel, qualityFactor)
public: void SaveComposite( RasterCodecs^ codecs, Stream^ stream, List<CompositeJpxImages^>^ compositeImages, Jpeg2000FileFormat format, int bitsPerPixel, int qualityFactor )
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.Jpeg2000 Public Sub SaveCompositeStreamExample(ByVal xmlData() As Byte) Dim codecs As New RasterCodecs() codecs.ThrowExceptionsOnInvalidImages = True Dim fs As FileStream = File.OpenRead(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx")) ' Load a JPEG 2000 image Dim engine As New Jpeg2000Engine() Dim images As List(Of CompositeJpxImages) = engine.LoadComposite(codecs, fs, 0, CodecsLoadByteOrder.BgrOrGray) engine.ResetEngineBoxes() Dim gtsoBox As GtsoBox = DirectCast(engine.ReadBox(fs, Jpeg2000BoxType.GtsoBox, 0), GtsoBox) engine.SetBox(Jpeg2000FileFormat.LeadJpx, gtsoBox) fs.Close() fs = File.Create(Path.Combine(LEAD_VARS.ImagesDir, "Test.jpx")) ' Save the image in JPX file format engine.SaveComposite(codecs, fs, images, Jpeg2000FileFormat.LeadJpx, 24, 5) ' Append an XML box Dim _xmlBox As New XmlBox() _xmlBox.Data = xmlData Dim xmlBoxes As New List(Of XmlBox) xmlBoxes.Add(_xmlBox) engine.AppendBoxes(fs, xmlBoxes) ' Clean up fs.Close() Dim _image As CompositeJpxImages For Each _image In images _image.ColorImage.Dispose() _image.OpacityImage.Dispose() _image.PreOpacityImage.Dispose() Next _image codecs.Dispose() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.Codecs; using Leadtools.Jpeg2000; public void SaveCompositeStreamExample(byte[] xmlData) { RasterCodecs codecs = new RasterCodecs(); codecs.ThrowExceptionsOnInvalidImages = true; FileStream fs = File.OpenRead(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx")); // Load a JPEG 2000 image Jpeg2000Engine engine = new Jpeg2000Engine(); List<CompositeJpxImages> images = engine.LoadComposite(codecs, fs, 0, CodecsLoadByteOrder.BgrOrGray); engine.ResetEngineBoxes(); GtsoBox gtsoBox = (GtsoBox)(engine.ReadBox(fs, Jpeg2000BoxType.GtsoBox, 0)); engine.SetBox(Jpeg2000FileFormat.LeadJpx, gtsoBox); fs.Close(); fs = File.Create(Path.Combine(LEAD_VARS.ImagesDir, "Test.jpx")); //Save the image in JPX file format engine.SaveComposite(codecs, fs, images, Jpeg2000FileFormat.LeadJpx, 24, 5); //Append an XML box XmlBox xmlBox = new XmlBox(); xmlBox.Data = xmlData; List<XmlBox> xmlBoxes = new List<XmlBox>(); xmlBoxes.Add(xmlBox); engine.AppendBoxes(fs, xmlBoxes); // Clean up fs.Close(); foreach (CompositeJpxImages image in images) { image.ColorImage.Dispose(); image.OpacityImage.Dispose(); image.PreOpacityImage.Dispose(); } codecs.Dispose(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }
Jpeg2000Engine Class
Jpeg2000Engine Members
Overload List
AppendFrames
Load
LoadComposite
ReadFrames
Save
SaveComposite(RasterCodecs, String, List, Jpeg2000FileFormat, Int32, Int32)
Compression Using LEAD and JPEG Formats
File Formats - JPEG And LEAD Compressed
Bitmaps In Memory And In Files
JPEG2000 File Comments
JPEG And LEAD File Comments
Programming with JPEG 2000 Features
JPEG 2000 Boxes